import { http } from '@/utils'
import type { UserItem } from '@/api/sys/user'

export type RoleItem = {
  /** 角色Id */
  id: number
  createTime: string
  updateTime: string
  /** 用户ID */
  userId: string
  /** 角色名称 */
  name: string
  /** 角色标签 */
  label: string
  /** 角色备注 */
  remark: string | null
  /** 数据权限是否关联上下级 */
  relevance: 0 | 1
  /** 菜单权限 */
  menuIdList: string | null
  /** 部门权限 */
  departmentIdList: string | null
}

export type PageParams = {
  page?: number
  size?: number
  order?: string
  sort?: string
}

/** 获取角色分页列表数据 */
export function getRolePage(data: PageParams) {
  return http.post<{
    list: RoleItem[]
    pagination: {
      page: number
      size: number
      total: number
    }
  }>('/admin/base/sys/role/page', data)
}

/** 获取用户分页列表数据 */
export function getUserPage(data: PageParams) {
  return http.post<{
    list: UserItem[]
    pagination: {
      page: number
      size: number
      total: number
    }
  }>('/admin/base/sys/user/page', data)
}
